package lx;


public class demo3 {
    public static void main(String[] args) {
        //猴子偷桃问题
        /*
        有一堆桃子,猴子第一天吃了其实一半,并且多吃了一个!
        以后每天猴子都吃当前剩下来的一半,然后多吃一个
        第10天的时候(还没有吃),发现就剩下一个桃子,请问最初总共多少个桃子
        day10 1;
        day9=(day10+1)*2 4
        day8=(day9+1)*2  10
        每一天的桃子的数量都是后一天数量+1,*2
         */


        //method01();
        /*
        1.出口
        day==10 剩下一个
        2. 规律
        每一天的桃子的数量都是后一天数量+1,*2

         */

        System.out.println(getCount(1));
    }

    public static int getCount(int day) {
        if (day <= 0 || day >= 11) {
            System.out.println("当前时间错误");
            return -1;
        }
        //出口
        if (day == 10) {
            return 1;
        } else {// 每一天的桃子的数量都是后一天数量+1,*2
            return (getCount(day + 1) + 1) * 2;
        }
    }

    private static void method01() {
        int day = 0;
        int x = 1;
        int y = 0;
        for (day = 9; day >= 1; day--) {
            y = (x + 1) * 2;
            x = y;
        }
        System.out.println(y);
    }
}
